package com.fueled.flowr.sample; import android.databinding.DataBindingUtil; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.view.View; import com.fueled.flowr.Flowr; import com.fueled.flowr.NavigationIconType; import com.fueled.flowr.ToolbarHandler; import com.fueled.flowr.sample.core.AbstractActivity; import com.fueled.flowr.sample.core.FragmentResultPublisherImpl; import com.fueled.flowr.sample.databinding.ActivityMainBinding; public class MainActivity extends AbstractActivity implements ToolbarHandler { private Flowr flowr; private ActivityMainBinding binding; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); binding = DataBindingUtil.setContentView(this, R.layout.activity_main); setSupportActionBar(binding.toolbar); if (getFlowr().getCurrentFragment() == null) { getFlowr().open(HomeFragment.class) .skipBackStack(true) .displayFragment(); } } public Flowr getFlowr() { if (flowr == null) { flowr = new Flowr(R.id.main_container, this, this, null, FragmentResultPublisherImpl.getInstance()); } return flowr; } @Override public void setNavigationIcon(NavigationIconType navigationIconType) { switch (navigationIconType) { case BACK: binding.toolbar.setNavigationIcon(R.drawable.ic_arrow_back); break; case HAMBURGER: binding.toolbar.setNavigationIcon(R.drawable.ic_menu); break; default: binding.toolbar.setNavigationIcon(null); break; } } @Override public void setCustomNavigationIcon(Drawable navigationIcon) { binding.toolbar.setNavigationIcon(navigationIcon); } @Override public void setToolbarVisible(boolean visible) { binding.toolbar.setVisibility(visible ? View.VISIBLE : View.GONE); } @Override public void setToolbarTitle(String title) { binding.toolbar.setTitle(title); } @Override public void setToolbarNavigationButtonListener(View.OnClickListener onClickListener) { binding.toolbar.setNavigationOnClickListener(onClickListener); } }